package com.culturalCenter.dataCenter.service.site;

import com.culturalCenter.dataCenter.customEntity.responseParam.site.UsedRateResponse;
import com.culturalCenter.dataCenter.entity.site.SiteBookingMonth;
import com.github.pagehelper.PageInfo;

import java.util.Date;
import java.util.List;

public interface SiteBookingMonthService {

    /**
     * SiteBookingMonth分页查询
     *
     * @param page
     * @param size
     *
     * @return
     */
    PageInfo<SiteBookingMonth> findPage(int page, int size);

    /**
     * 删除SiteBookingMonth
     *
     * @param id
     *
     * @return
     */
    Integer delete(String id);

    /**
     * 修改SiteBookingMonth数据
     *
     * @param siteBookingMonth
     *
     * @return
     */
    Integer update(SiteBookingMonth siteBookingMonth);

    /**
     * 新增SiteBookingMonth
     *
     * @param siteBookingMonth
     *
     * @return
     */
    Integer add(SiteBookingMonth siteBookingMonth);

    /**
     * 根据ID查询SiteBookingMonth
     *
     * @param id
     *
     * @return
     */
    SiteBookingMonth findById(String id);

    /**
     * 查询所有SiteBookingMonth
     *
     * @param siteBookingMonth
     *
     * @return
     */
    List<SiteBookingMonth> findAll(SiteBookingMonth siteBookingMonth);

    /**
     * 查询近七天场地使用率
     *
     * @param date
     *
     * @return
     */
    UsedRateResponse getUsageRate(Date date);

}
